Developer --> Technical Publications
PATH Hardware Documentation > Device Managers and Drivers > ATA Devices > ATA Device Software Guide


driver gestalt

The driver gestalt status function provides the application information about the ATA disk driver and the attached device. Several calls are supported under this function. A Gestalt selector is used to specify a particular call.

The DriverGestaltParam data type defines the ATA Gestalt structure. Refer to Designing PCI Cards and Drivers for the Macintosh Family for information related to the ATA gestalt structure.

The fields driverGestaltSelector and driverGestaltResponse are 32-bit fields that contain the gestalt selector and possible responses. The selectors and responses are defined in the parameter block definition.


Parameter block

-->

csCode

A value of 43.
-->

ioVRefNum

The logical drive number.
-->

driverGestaltSelector

Gestalt function selector. This is a 32-bit ASCII field containing one of the following selectors:

sync Indicate synchronous or
asynchronous driver.

devt Specify type of device the driver
is controlling.

intf Specify the device interface.

boot Specify PRAM value to designate this driver or device.

vers Specify the version number of the driver.

lpwr Indicates low power mode support.

purg Request if the driver can be closed and or purged.

wide Indicates large volume support.

ejec Eject control function requirements.
<--

driverGestaltResponse

Returned result based on the driver gestalt selector. The possible four-character return values are:

TRUE If the sync driver selector is specified, this Boolean value indicates that the driver is synchronous; a value of FALSE indicates asynchronous.

'disk' If the devt driver selector is specified, this value indicates a hard disk driver.

'ide ' If the intf driver selector is specified, this value indicates the interface is ATA.

nnnn If the vers selector is specified, the current version number of the driver is returned.

TRUE If the lpwr selector is specified, this value indicates the power mode control and status function are supported.

TRUE If the wide selector is specified, this value indicates the driver supports large volumes.

value If the ejec selector is specified, this value indicates when the ejec call should be made. Bit 0, if set, means don't issue eject call on Restart. Bit 1, if set, means don't issue eject call on Shutdown. If the purg selector is specified, this value indicates whether the driver can close and or purged from memory. A value of 0 indicates that the driver cannot be closed. A value of 3 indicates that the driver can be closed, but not purged. A value of 7 indicates that the driver can be both closed and purged from memory.
<--

ioResult

See result codes.
RESULT CODES

noErr

0 Successful completion, no error occurred

statusErr

-18 Unknown selector was specified

nsDrvErr

-56 The specified logical drive number does not exist

© 1999 Apple Computer, Inc. — (Last Updated 30 Oct 97)

Previous | Back Up One Level | Next | Show Frames | Hide Frames